package db;

// Generated Mar 23, 2013 11:32:01 AM by Hibernate Tools 4.0.0

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.Generated;
import org.hibernate.annotations.GenerationTime;

/**
 * HooldusteenuseTellimus generated by hbm2java
 */
@Entity
@Table(name = "hooldusteenuse_tellimus")
public class HooldusteenuseTellimus implements java.io.Serializable {

	/**
     * 
     */
    private static final long serialVersionUID = 1L;
	private int hooldusteenuseTellimuseNr;
	private HooldusteenuseTellimuseSeisundiLiik hooldusteenuseTellimuseSeisundiLiik;
	private Hooldusteenus hooldusteenus;
	private Kinnistu kinnistu;
	private HooldusteenuseTellimuseKliendiOtsuseSeisundiLiik hooldusteenuseTellimuseKliendiOtsuseSeisundiLiik;
	private Tootaja tootaja;
	private Date registrAeg;
	private BigDecimal siseruumidePindala;
	private Integer tubadeArv;
	private BigDecimal aiaPindala;
	private String kommentaar;
	private Date firmaOtsusOsutamiseAlgus;
	private Date kliendiOtsusMuutmiseKuupaev;
	private String pakkumiseTeade;

	@Id
	@Generated(GenerationTime.NEVER)
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name = "hooldusteenuse_tellimuse_nr", unique = true, nullable = false)
	public int getHooldusteenuseTellimuseNr() {
		return this.hooldusteenuseTellimuseNr;
	}

	public void setHooldusteenuseTellimuseNr(int hooldusteenuseTellimuseNr) {
		this.hooldusteenuseTellimuseNr = hooldusteenuseTellimuseNr;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "tellimuse_seisund", nullable = false)
	public HooldusteenuseTellimuseSeisundiLiik getHooldusteenuseTellimuseSeisundiLiik() {
		return this.hooldusteenuseTellimuseSeisundiLiik;
	}

	public void setHooldusteenuseTellimuseSeisundiLiik(
			HooldusteenuseTellimuseSeisundiLiik hooldusteenuseTellimuseSeisundiLiik) {
		this.hooldusteenuseTellimuseSeisundiLiik = hooldusteenuseTellimuseSeisundiLiik;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "hooldusteenus", nullable = false)
	public Hooldusteenus getHooldusteenus() {
		return this.hooldusteenus;
	}

	public void setHooldusteenus(Hooldusteenus hooldusteenus) {
		this.hooldusteenus = hooldusteenus;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "kinnistu", nullable = false)
	public Kinnistu getKinnistu() {
		return this.kinnistu;
	}

	public void setKinnistu(Kinnistu kinnistu) {
		this.kinnistu = kinnistu;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "kliendi_otsus", nullable = false)
	public HooldusteenuseTellimuseKliendiOtsuseSeisundiLiik getHooldusteenuseTellimuseKliendiOtsuseSeisundiLiik() {
		return this.hooldusteenuseTellimuseKliendiOtsuseSeisundiLiik;
	}

	public void setHooldusteenuseTellimuseKliendiOtsuseSeisundiLiik(
			HooldusteenuseTellimuseKliendiOtsuseSeisundiLiik hooldusteenuseTellimuseKliendiOtsuseSeisundiLiik) {
		this.hooldusteenuseTellimuseKliendiOtsuseSeisundiLiik = hooldusteenuseTellimuseKliendiOtsuseSeisundiLiik;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "kinnitaja")
	public Tootaja getTootaja() {
		return this.tootaja;
	}

	public void setTootaja(Tootaja tootaja) {
		this.tootaja = tootaja;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "registr_aeg", nullable = false, length = 13)
	public Date getRegistrAeg() {
		return this.registrAeg;
	}

	public void setRegistrAeg(Date registrAeg) {
		this.registrAeg = registrAeg;
	}

	@Column(name = "siseruumide_pindala", precision = 16)
	public BigDecimal getSiseruumidePindala() {
		return this.siseruumidePindala;
	}

	public void setSiseruumidePindala(BigDecimal siseruumidePindala) {
		this.siseruumidePindala = siseruumidePindala;
	}

	@Column(name = "tubade_arv")
	public Integer getTubadeArv() {
		return this.tubadeArv;
	}

	public void setTubadeArv(Integer tubadeArv) {
		this.tubadeArv = tubadeArv;
	}

	@Column(name = "aia_pindala", precision = 16)
	public BigDecimal getAiaPindala() {
		return this.aiaPindala;
	}

	public void setAiaPindala(BigDecimal aiaPindala) {
		this.aiaPindala = aiaPindala;
	}

	@Column(name = "kommentaar")
	public String getKommentaar() {
		return this.kommentaar;
	}

	public void setKommentaar(String kommentaar) {
		this.kommentaar = kommentaar;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "firma_otsus_osutamise_algus", length = 13)
	public Date getFirmaOtsusOsutamiseAlgus() {
		return this.firmaOtsusOsutamiseAlgus;
	}

	public void setFirmaOtsusOsutamiseAlgus(Date firmaOtsusOsutamiseAlgus) {
		this.firmaOtsusOsutamiseAlgus = firmaOtsusOsutamiseAlgus;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "kliendi_otsus_muutmise_kuupaev", length = 13)
	public Date getKliendiOtsusMuutmiseKuupaev() {
		return this.kliendiOtsusMuutmiseKuupaev;
	}

	public void setKliendiOtsusMuutmiseKuupaev(Date kliendiOtsusMuutmiseKuupaev) {
		this.kliendiOtsusMuutmiseKuupaev = kliendiOtsusMuutmiseKuupaev;
	}

	@Column(name = "pakkumise_teade")
	public String getPakkumiseTeade() {
		return this.pakkumiseTeade;
	}

	public void setPakkumiseTeade(String pakkumiseTeade) {
		this.pakkumiseTeade = pakkumiseTeade;
	}

}
